An Introduction to Reeection-oriented Programming

نویسندگان

  • Jonathan M. Sobel
  • Daniel P. Friedman
چکیده

Most accounts of re ection are in an interpreted framework and tend to assume the availability of particular pieces of the state of a program's interpretation, including the current source code expression. This paper presents a computational account of re ection, drawing a distinction between the meta-level manipulation of data or control and the mere availability of meta-circular implementation details. In particular, this account does not presume the existence of program source code at runtime. The paper introduces a programming paradigm that relies on re ective language features and draws on the power of object-oriented programming. Several examples of the use of these features are provided, along with an explanation of a translation-based implementation. The examples include the measurement of computational expense, the introduction of rst-class continuations, and the modi cation of the semantics of expressed values, all in the framework of re ection-oriented programming.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Aspect-oriented Programming versus Reeection: a Rst Draft

Reeection has a long history of dealing about some aspects of software components. In this short position paper, we compare and contrast reeection and aspect-oriented programming. Whilst reeection has recently focused on very speciic aspects of software components, namely implemen-tational usually segregated among structural (representation) and behavioral (execution) aspects, aspect-oriented p...

متن کامل

Behavioral Re ection in a Prototype-Based Language

In MCD92], we have contributed a reeective model for a prototype-based language based on the lookup apply re-ective introspection protocol. Here, we pursue this work by including a reiication of continuations. Hence, we provide continuations as rst-class objects and convert our previous protocol to handle them. First-class continuations provide much more control over the current computation. Al...

متن کامل

Debugging by Remote Reeection

Reeection in an object-oriented system allows the structure of objects and classes to be queried at run-time, thus enabling \meta-object" programming such as program debugging. Remote Reeection allows objects in one address space to reeect upon objects in a diierent address space. Used with a debugger, remote reeection makes available the full power of object-oriented reeection even when the ob...

متن کامل

Submission to Oopsla 2000 Workshop on Advanced Separation of Concerns in Object-oriented Systems Concern Oriented Programming Using Reeection

Building softwares in a concern oriented fashion can be splited in two main steps : rst deening each concern separately (or reusing existing ones) and then composing (i.e. integrating) those concerns together. Among existing approaches to support this development scheme, we are interested in reeection. This interest is particularly motivated by the natural separation between functional and non-...

متن کامل

Using Reeection for Implementing Icom, an Interoperable Common Object Model

Reuse of already developed object-oriented software components is reduced when software is written in diierent object-oriented languages, or when it is not easy to relocate the software components from one machine to another machine. Software development in a distributed and heterogeneous environment is a solution to this problem. Several common object models have been deened for software devel...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1996